#include<iostream>
using namespace std;
int vs[1001],w[1001],dp[1001];
int main(){
    int n,v;
    cin>>n>>v;
    for(int i=1;i<=n;i++)
        cin>>vs[i]>>w[i];
    for(int i=1;i<=n;i++)
        for(int j=vs[i];j<=v;j++)
            dp[j]=max(dp[j],dp[j-vs[i]]+w[i]);
    cout<<dp[v]<<endl;
    return 0;
}